DeployLX Software Protection System

License Server Limit

The License Server Limit communicates with a license server to remotely monitor and authorize the use of the protected software.

How is the License Server Limit Enforced?

When the license is validated DeployLX contacts the license server to request authorization and resolves to one of three states: Verified, Denied or Disconnected.

If the response from the server is Verified, then validation continues normally. Any child limits of the Verified state will be applied.

When Denied or Disconnected, DeployLX will look for a matching state limit. If present, then validation is delegated to that state limit, otherwise the license is denied.

Checking the License Server at Different Periods

The default behavior is to contact the license server each time the license is validated which can cause profrmance and reliability problems. To support the uncertainty of the Internet, the License Server Limit may be configured to contact the server periodically and cache the result.

Once a valid response is received it is cached for the duration permitted by the license until the next time the server is contacted.

Even when cached, DeployLX attempts to contact the license server asynchronously once a day during the cached period to ensure that a valid license is available when disconnected.

Asynchronous Validation

The License Server Limit supports asynchronous validation. When enabled a new thread is created to contact the remote server. If the server returns an error then the DelayedValidationFailed event is raised.

You must attach a handler to this event in order to handle the delayed validation and take appropriate action such as shutting down the application or reducing functionality.

Caution A new thread is created on each request. Multiple calls to validate that rapid succession may result in performance degradation. Select Skip async check if pending to improve performance.

Secure Storage

The limit uses DeployLX's Secure Storage service to track state on the client machine. Secure storage imposes additional security requirements that may require additional configuration

See the Secure Storage topic for more details.

See Also